package com.ruoyi.project.system.service;

import com.ruoyi.project.system.domain.SmProduct;

import java.math.BigDecimal;
import java.util.List;

/**
 * 产品Service接口
 */
public interface ISmProductService {

    /**
     * 自用底价
     *
     * @param productId
     * @param userId
     * @return
     */
    BigDecimal basePrice(Long userId, Integer productId, Integer roleId);

    /**
     * 推广收益
     *
     * @param userId
     * @param productId
     * @return
     */
    BigDecimal promotionAdd(Long userId, Integer productId, Integer roleId);

    /**
     * 推广售价
     *
     * @param productId
     * @param userId
     * @return
     */
    BigDecimal promotionPrice(Long userId, Integer productId, Integer roleId);

    /**
     * 下级提成
     *
     * @param userId
     * @param productId
     * @return
     */
    BigDecimal basePriceAdd(Long userId, Integer productId, Integer roleId);

    /**
     * 下级价格
     *
     * @param productId
     * @param userId
     * @return
     */
    BigDecimal subordinatePrice(Long userId, Integer productId, Integer roleId);

    /**
     * 查询产品
     *
     * @param id 产品主键
     * @return 产品
     */
    SmProduct selectSmProductById(Integer id);

    /**
     * 新增产品
     *
     * @param smProduct 产品
     * @return 结果
     */
    int insertSmProduct(SmProduct smProduct);

    /**
     * 修改产品
     *
     * @param smProduct 产品
     * @return 结果
     */
    int updateSmProduct(SmProduct smProduct);

}
